home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / cbibcode.arc / STLPLT.C < prev    next >
Text File  |  1991-08-05  |  2KB  |  59 lines

  1. #include <stdio.h>
  2. #include <graphics.h>
  3. /* Define new color map using defined constants from
  4.  * graphics.h. Notice that we have swapped red with blue
  5.  * and cyan with black. So the background will become
  6.  * cyan now.
  7.  */
  8. struct palettetype newcolormap[] =
  9.     {16,
  10.      EGA_CYAN, EGA_RED, EGA_GREEN, EGA_BLACK, EGA_BLUE,
  11.      EGA_MAGENTA, EGA_BROWN, EGA_LIGHTGRAY,
  12.      EGA_DARKGRAY, EGA_LIGHTBLUE, EGA_LIGHTGREEN,
  13.      EGA_LIGHTCYAN, EGA_LIGHTRED, EGA_LIGHTMAGENTA,
  14.      EGA_YELLOW, EGA_WHITE};
  15.  
  16. main()
  17. {
  18.     int i;
  19.     short color=0, x1=0, y1=60, x2=100, y2=70;
  20.  
  21.     int graphdriver = DETECT;
  22.     int graphmode;
  23.  
  24.   /* Detect and initialize graphics system */
  25.     initgraph(&graphdriver, &graphmode, "c:\\turboc");
  26.     if (graphdriver != EGA && graphdriver != VGA)
  27.     {
  28. /* Error setting mode */
  29.     printf("Not EGA/VGA hardware\n");
  30.     exit(0);
  31.     }
  32. /* Display rectangles filled with colors from current
  33.  * palette
  34.  */
  35.     outtextxy(10,10, "Remapping the color palette using setallpalette");
  36. /* Draw the filled rectangles */
  37.     for (i=1; i<=8; i++)
  38.     {
  39.     color = 2*i-1;
  40.     setfillstyle(SOLID_FILL, color);
  41.     bar(x1, y1, x2, y2);
  42.     y1 += 20;
  43.     y2 += 20;
  44.  
  45.     }
  46. /* Now remap entire palette--swap red with blue, cyan
  47.  * with black
  48.  */
  49.     setcolor(EGA_RED);
  50.     outtextxy(10, 30, "Hit any key to remap the entire palette:");
  51.     getch();
  52. /* Display changes immediately */
  53.     setallpalette(newcolormap);
  54. /* Restore mode back to where we originally started */
  55. /* Give user a chance to see the result */
  56.     outtextxy(10, getmaxy()-50, "Hit any key to exit:");
  57.     getch();
  58.     closegraph();
  59. }